1. Technical Field
This disclosure relates generally to accessing data on a physical recording medium, and more specifically to handling snapshot information on such a medium.
2. Description of the Related Art
Modern storage systems often require various restore capabilities for stored data. Such a restoration may be performed, for example, to facilitate crash recovery in the event of power loss, to recover a last known valid state in the event of data corruption, etc. This functionality may be achieved by taking “snapshots” of data for particular applications such that a snapshot includes information indicating the current state of data for the application at the time the snapshot is taken. For example, taking the snapshot of a database application might include copying the current values of data within the database to an alternate storage.
In the context of flash-based storage, to improve the longevity of memory cells, modern storage systems may implement a log-structured storage to ensure that writes to cells are more evenly distributed across the storage to produce better wear leveling (as opposed to writing particular cells frequently while other cells go unused). When storing data using a log-structure storage, data may be written at an append point that starts at an initial portion in the storage and advances forward as writes are performed. A driver may map logical addresses used by an application to physical locations on a storage device where the data is actually stored, e.g., according to a log-structured implementation.